package com.link2room.jetfire.facade;

import com.link2room.jetfire.dto.result.base.ReservationDto;
import com.link2room.jetfire.dto.param.api.ReservationBaseApiParamDto;
import com.link2room.jetfire.dto.param.api.WxPayOrderApiParamDto;
import com.link2room.common.jpa.result.QueryResult;

/**
 * Created by sss on 2016/9/20.
 */
public interface IReservationApiFacadeService {

    /**
     * API取消订单
     * @param reservationBaseApiParamDto
     * @throws Exception
     */
    void cancelReservationBase(ReservationBaseApiParamDto reservationBaseApiParamDto)throws Exception;

    /**
     * 获取订单列表
     * @param reservationBaseApiParamDto
     * @return
     * @throws Exception
     */
    QueryResult<ReservationDto> listReservationFroApi(ReservationBaseApiParamDto reservationBaseApiParamDto)throws Exception;

    /**
     * 获取订单详情
     * @param reservationBaseApiParamDto
     * @return
     * @throws Exception
     */
    ReservationDto getReservationForApi(ReservationBaseApiParamDto reservationBaseApiParamDto)throws Exception;

    /**
     * 预下单
     * @param wxPayOrderApiParamDto
     * @return
     * @throws Exception
     */
    String l2rPreOrder(WxPayOrderApiParamDto wxPayOrderApiParamDto)throws Exception;

}
